使用AVRStudio設置AVR熔絲位及燒寫程序
2013/12/2 10:28:00
AVR Studio是ATMEL指定用于開發(fā)AVR MCU的官方軟件,其編程功能最為強大。下面介紹使用AVRStudio燒寫程序及熔絲快速入門。
● 使用AVRISP方式燒寫程序及配置熔絲位
對軟硬件進行初始配置,并正確設備連接,就可使用AVRISP進行聯(lián)機了。
(點擊圖片放大) 在左邊,選擇“STK500 or AVRISP”,在右邊,選擇“Auto”(或具體的COM口),點擊“Connect”進行聯(lián)機。
正常聯(lián)機后,將彈出如下窗口:
?。?)程序編程面板:
(點擊圖片放大)● Device里面選擇好對應的芯片類型,后面的Erase Device可以擦除芯片。
● Programming mode編程模式:注意這里必須是ISP mod,表示用的ISP編程模式;Erase Device Before 選項:編程前先擦除芯片,建議選上,如果不選芯片內(nèi)部殘留的程序可能會對新的程序造成干擾。Verity Device After Program:下載完畢后校驗程序內(nèi)容,建議選上。
● Flash 下載區(qū):Input HEX File,找到要寫的hex文件格式為*.hex、*.e90。Program,編程點此按鈕,將會把Input HEX File對應文件下載到芯片中去,如果路徑有錯誤或者文件格式不正確會有提示報警。Verify 校驗命令,用于檢測芯片內(nèi)程序是否和文件中的一致。Read讀命令,此命令可以讀出未加密芯片內(nèi)的程序,自動彈出一個對話框提示保存。
● EEPROM下載區(qū),和Flash 下載區(qū)類似,格式為.hex、.e90和.eep,此功能用于下載比較多的需要存在EEPROM中的內(nèi)容時使用。Program、Verify、Read于Flash下載區(qū)有對應EEPROM的同樣的功能,不在贅述。
● 狀態(tài)指示區(qū),這里顯示目前的操作狀態(tài)。 ?。?)熔絲位設置面板:
(點擊圖片放大)● 配置熔絲位有一定的危險性,可能鎖死芯片,在不知道具體在做什么操作之前,請不要急于動手。
● 熔絲位狀態(tài)顯示框,顯示芯片的各個熔絲位的詳細狀況,AVR的熔絲位打勾表示0,表示啟用該選項;取消表示1,表示不啟用該選項,需要注意。
● Auto Verity 選項選中時,程序會自己進行校驗,建議選中。Smart Warning選項選中時,在對一些特殊的具有一定危險性的熔絲位進行編程時會彈出警告信息,建議選中。
● Program、Verify和Read分別對應編程、校驗和讀取,正確的配置熔絲的方法是先讀取,先后修改需要修改的地方,再編程寫回。在Auto Verity選項選中時無需再點Verify按鈕進行校驗。
● 為了安全起見,在ISP模式下,SPEEN熔絲是不允許編程的。
● 芯片鎖死的主要原因是設錯熔絲位,主要有兩種情況:
(1)JTAGEN和SPIEN兩個熔絲位都為1(不打勾),不能再進行編程,此時只能用高壓并行編程或者有源晶振恢復。
(2)將熔絲位選擇了外部晶振或外部RC振蕩,而沒有接外部晶振或外部RC振蕩,或者外接的振蕩頻率不匹配,導致芯片不能工作,這種情況,需要外掛相應晶體才能再次操作芯片,用戶應盡量記起當時設錯熔絲的情況,比如錯誤設置成了外部3-8M晶振,那么外掛一個3-8M晶振即可進行相應操作。
當然還有其它方面的原因?qū)е滦酒i死,在此處不再一一贅述。
下面以ATmega16為例,對其熔絲位進行簡單描述:
?。?)鎖定位設置面板:
● 通過編程鎖定位,允許用戶對AVR芯片內(nèi)數(shù)據(jù)進行加密,不同的鎖定位對應不同的加密保護程度,加密位共有三位,每位的數(shù)越大加密程度越高,否則越低。
● 被加密后的芯片依然可以讀出熔絲位和加密位的情況,一旦試圖對加密位進行修改,芯片內(nèi)的程序?qū)恍薷幕虿脸荒茉偈褂谩?br />● 加密位可以通過編程界面的芯片擦除功能擦除到初始狀態(tài),使得芯片可以重復使用。
● 鎖定位編程界面有與熔絲位編程界面相同的選項和操作按鈕,功能類似,不再贅述。
● 鎖定位編程應該在熔絲位編程之后進行,通常編程鎖定位是生產(chǎn)過程中寫芯片環(huán)節(jié)的最后一步。
下面以ATmega16為例,對其所定位進行簡單描述:
(點擊圖片放大) ?。?)高級設置面板:
(點擊圖片放大)● Signature Bytes,芯片型號標識位,點右邊的Read讀按鈕可以讀出芯片內(nèi)的ID。如果在編程面板里面選的芯片型號與讀出的芯片型號對應,下面會提示Signature matches selected device,如果不匹配會出現(xiàn)WARNING: Signature does not match selected device!
● Oscillator Calibration byte,內(nèi)部RC振蕩校準。這里選擇不同的頻率,點Read Cal. Byte ,可以讀出對應的頻率下的校準值,然后將這個值復制到Write區(qū),選擇將校準值寫到Flash還是EEPROM,點擊Write to Memory寫按鈕,即可完成對應頻率下的內(nèi)部RC振蕩校準。
● 寫入到flash區(qū)域的校準字芯片啟動時自動讀取并校準RC振蕩,如果寫到EEPROM中,需要程序中進行處理。
● Communication Settings串行通訊設定?! 。?)對目標板控制面板:
(點擊圖片放大)● Voltages 通過本面板可以查看目標板的電壓和寫參考電壓,參考電壓需要實際測得,再寫入,可以幫助仿真器準確讀取目標板電壓值以供參考。本功能在ISP編程模式下不可用,需要在JTAG模式下使用。
● Oscillator and ISP Clock 讀寫速率設定,這里可以讀寫仿真器內(nèi)ISP編程的速率,ISP模式下STK500選項為灰色。注意速率一定要小于芯片時鐘頻率的1/4,否則無法正確下載。
● Revision 版本號及升級,這里顯示當前hex文件的版本號,如果AVR studio內(nèi)的軟件版本高于仿真器的版本,右邊的Upgrade會可用,如果匹配則該按鈕為灰色。
● 當Upgrade按鈕為可用狀態(tài)時,可以點擊它進入自動升級,在此之前請確認仿真器是否支持自動升級,以免造成麻煩?! 。?)自動燒寫面板:
(點擊圖片放大)● 自動燒寫面板在生產(chǎn)的時候非常管用,程序會記錄上次進行批處理的各個選項,一旦設置好之后,可以連續(xù)進行燒寫。
● 請慎用本功能,在不知情的情況下使用本功能,鎖死芯片的幾率將大大增加。
● 自動處理:擦除芯片、檢測芯片ID號、寫flash、寫EEPROM、寫熔絲位、寫鎖定位以及他們對應的校驗,一次完成,狀態(tài)欄會顯示正在進行的操作。
● 所有的操作需要在前面對應的面板設置好,比如選擇好下載的HEX及EEPROM文件,選好熔絲位,選好鎖定位,寫好內(nèi)部RC校正位等。請一定確保各個選項正確,特別是熔絲需要格外小心,可以先在每個面板里面進行操作確認沒有問題再進行批處理操作。
● 在進行批處理之前,請先在高級選項里面設置好通訊速率,確保速率小于晶振的四分之一,否則會出錯。
● 可以選中右邊的Log to file選項從而記錄操作日志?! ?使用JTAG方式燒寫程序及熔絲位
對軟硬件進行初始配置,并正確設備連接,就可使用JTAG進行聯(lián)機了。
打開AVRStudio,點擊主窗口中的圖標前面標有Con的那個圖標。出現(xiàn)如下圖畫面:
(點擊圖片放大) 在左邊,選擇“JTAG ICE”,在右邊,選擇“Auto”(或具體的COM口),點擊“Connect”進行聯(lián)機。
詳細的燒寫介紹請參考:“使用AVRISP方式燒寫程序及熔絲”。
● 使用JTAG ICE mk2方式燒寫程序及熔絲位
對軟硬件進行初始配置,并正確設備連接,就可使用JTAGICE mk2進行聯(lián)機了。
打開AVRStudio,點擊主窗口中的圖標前面標有Con的那個圖標。出現(xiàn)如下圖畫面:
(點擊圖片放大) 在左邊,選擇“JTAGICE mkII”,在右邊,選擇“Auto”(或具體的COM口),點擊“Connect”進行聯(lián)機。
詳細的燒寫介紹請參考:“使用AVRISP方式燒寫程序及熔絲”。
提示:由于AVRStudio會記憶用戶使用的設備是STK500或JTAG并且同時會記憶用戶使用的COM號,如果下次和上次使用的是相同的設備并且沒有更換COM口,那么下次使用的時候直接點擊右邊標有“AVR”的那個圖標即快速進入聯(lián)機狀態(tài);
● 使用AVRISP方式燒寫程序及配置熔絲位
對軟硬件進行初始配置,并正確設備連接,就可使用AVRISP進行聯(lián)機了。
打開AVRStudio,點擊主窗口中的圖標
前面標有Con的那個圖標。出現(xiàn)如下圖畫面:(點擊圖片放大) 在左邊,選擇“STK500 or AVRISP”,在右邊,選擇“Auto”(或具體的COM口),點擊“Connect”進行聯(lián)機。
正常聯(lián)機后,將彈出如下窗口:
?。?)程序編程面板:
(點擊圖片放大)● Device里面選擇好對應的芯片類型,后面的Erase Device可以擦除芯片。
● Programming mode編程模式:注意這里必須是ISP mod,表示用的ISP編程模式;Erase Device Before 選項:編程前先擦除芯片,建議選上,如果不選芯片內(nèi)部殘留的程序可能會對新的程序造成干擾。Verity Device After Program:下載完畢后校驗程序內(nèi)容,建議選上。
● Flash 下載區(qū):Input HEX File,找到要寫的hex文件格式為*.hex、*.e90。Program,編程點此按鈕,將會把Input HEX File對應文件下載到芯片中去,如果路徑有錯誤或者文件格式不正確會有提示報警。Verify 校驗命令,用于檢測芯片內(nèi)程序是否和文件中的一致。Read讀命令,此命令可以讀出未加密芯片內(nèi)的程序,自動彈出一個對話框提示保存。
● EEPROM下載區(qū),和Flash 下載區(qū)類似,格式為.hex、.e90和.eep,此功能用于下載比較多的需要存在EEPROM中的內(nèi)容時使用。Program、Verify、Read于Flash下載區(qū)有對應EEPROM的同樣的功能,不在贅述。
● 狀態(tài)指示區(qū),這里顯示目前的操作狀態(tài)。 ?。?)熔絲位設置面板:
(點擊圖片放大)● 配置熔絲位有一定的危險性,可能鎖死芯片,在不知道具體在做什么操作之前,請不要急于動手。
● 熔絲位狀態(tài)顯示框,顯示芯片的各個熔絲位的詳細狀況,AVR的熔絲位打勾表示0,表示啟用該選項;取消表示1,表示不啟用該選項,需要注意。
● Auto Verity 選項選中時,程序會自己進行校驗,建議選中。Smart Warning選項選中時,在對一些特殊的具有一定危險性的熔絲位進行編程時會彈出警告信息,建議選中。
● Program、Verify和Read分別對應編程、校驗和讀取,正確的配置熔絲的方法是先讀取,先后修改需要修改的地方,再編程寫回。在Auto Verity選項選中時無需再點Verify按鈕進行校驗。
● 為了安全起見,在ISP模式下,SPEEN熔絲是不允許編程的。
● 芯片鎖死的主要原因是設錯熔絲位,主要有兩種情況:
(1)JTAGEN和SPIEN兩個熔絲位都為1(不打勾),不能再進行編程,此時只能用高壓并行編程或者有源晶振恢復。
(2)將熔絲位選擇了外部晶振或外部RC振蕩,而沒有接外部晶振或外部RC振蕩,或者外接的振蕩頻率不匹配,導致芯片不能工作,這種情況,需要外掛相應晶體才能再次操作芯片,用戶應盡量記起當時設錯熔絲的情況,比如錯誤設置成了外部3-8M晶振,那么外掛一個3-8M晶振即可進行相應操作。
當然還有其它方面的原因?qū)е滦酒i死,在此處不再一一贅述。
下面以ATmega16為例,對其熔絲位進行簡單描述:
?。?)鎖定位設置面板:
● 通過編程鎖定位,允許用戶對AVR芯片內(nèi)數(shù)據(jù)進行加密,不同的鎖定位對應不同的加密保護程度,加密位共有三位,每位的數(shù)越大加密程度越高,否則越低。
● 被加密后的芯片依然可以讀出熔絲位和加密位的情況,一旦試圖對加密位進行修改,芯片內(nèi)的程序?qū)恍薷幕虿脸荒茉偈褂谩?br />● 加密位可以通過編程界面的芯片擦除功能擦除到初始狀態(tài),使得芯片可以重復使用。
● 鎖定位編程界面有與熔絲位編程界面相同的選項和操作按鈕,功能類似,不再贅述。
● 鎖定位編程應該在熔絲位編程之后進行,通常編程鎖定位是生產(chǎn)過程中寫芯片環(huán)節(jié)的最后一步。
下面以ATmega16為例,對其所定位進行簡單描述:
(點擊圖片放大) ?。?)高級設置面板:
(點擊圖片放大)● Signature Bytes,芯片型號標識位,點右邊的Read讀按鈕可以讀出芯片內(nèi)的ID。如果在編程面板里面選的芯片型號與讀出的芯片型號對應,下面會提示Signature matches selected device,如果不匹配會出現(xiàn)WARNING: Signature does not match selected device!
● Oscillator Calibration byte,內(nèi)部RC振蕩校準。這里選擇不同的頻率,點Read Cal. Byte ,可以讀出對應的頻率下的校準值,然后將這個值復制到Write區(qū),選擇將校準值寫到Flash還是EEPROM,點擊Write to Memory寫按鈕,即可完成對應頻率下的內(nèi)部RC振蕩校準。
● 寫入到flash區(qū)域的校準字芯片啟動時自動讀取并校準RC振蕩,如果寫到EEPROM中,需要程序中進行處理。
● Communication Settings串行通訊設定?! 。?)對目標板控制面板:
(點擊圖片放大)● Voltages 通過本面板可以查看目標板的電壓和寫參考電壓,參考電壓需要實際測得,再寫入,可以幫助仿真器準確讀取目標板電壓值以供參考。本功能在ISP編程模式下不可用,需要在JTAG模式下使用。
● Oscillator and ISP Clock 讀寫速率設定,這里可以讀寫仿真器內(nèi)ISP編程的速率,ISP模式下STK500選項為灰色。注意速率一定要小于芯片時鐘頻率的1/4,否則無法正確下載。
● Revision 版本號及升級,這里顯示當前hex文件的版本號,如果AVR studio內(nèi)的軟件版本高于仿真器的版本,右邊的Upgrade會可用,如果匹配則該按鈕為灰色。
● 當Upgrade按鈕為可用狀態(tài)時,可以點擊它進入自動升級,在此之前請確認仿真器是否支持自動升級,以免造成麻煩?! 。?)自動燒寫面板:
(點擊圖片放大)● 自動燒寫面板在生產(chǎn)的時候非常管用,程序會記錄上次進行批處理的各個選項,一旦設置好之后,可以連續(xù)進行燒寫。
● 請慎用本功能,在不知情的情況下使用本功能,鎖死芯片的幾率將大大增加。
● 自動處理:擦除芯片、檢測芯片ID號、寫flash、寫EEPROM、寫熔絲位、寫鎖定位以及他們對應的校驗,一次完成,狀態(tài)欄會顯示正在進行的操作。
● 所有的操作需要在前面對應的面板設置好,比如選擇好下載的HEX及EEPROM文件,選好熔絲位,選好鎖定位,寫好內(nèi)部RC校正位等。請一定確保各個選項正確,特別是熔絲需要格外小心,可以先在每個面板里面進行操作確認沒有問題再進行批處理操作。
● 在進行批處理之前,請先在高級選項里面設置好通訊速率,確保速率小于晶振的四分之一,否則會出錯。
● 可以選中右邊的Log to file選項從而記錄操作日志?! ?使用JTAG方式燒寫程序及熔絲位
對軟硬件進行初始配置,并正確設備連接,就可使用JTAG進行聯(lián)機了。
打開AVRStudio,點擊主窗口中的圖標前面標有Con的那個圖標。出現(xiàn)如下圖畫面:
(點擊圖片放大) 在左邊,選擇“JTAG ICE”,在右邊,選擇“Auto”(或具體的COM口),點擊“Connect”進行聯(lián)機。
詳細的燒寫介紹請參考:“使用AVRISP方式燒寫程序及熔絲”。
● 使用JTAG ICE mk2方式燒寫程序及熔絲位
對軟硬件進行初始配置,并正確設備連接,就可使用JTAGICE mk2進行聯(lián)機了。
打開AVRStudio,點擊主窗口中的圖標前面標有Con的那個圖標。出現(xiàn)如下圖畫面:
(點擊圖片放大) 在左邊,選擇“JTAGICE mkII”,在右邊,選擇“Auto”(或具體的COM口),點擊“Connect”進行聯(lián)機。
詳細的燒寫介紹請參考:“使用AVRISP方式燒寫程序及熔絲”。
提示:由于AVRStudio會記憶用戶使用的設備是STK500或JTAG并且同時會記憶用戶使用的COM號,如果下次和上次使用的是相同的設備并且沒有更換COM口,那么下次使用的時候直接點擊右邊標有“AVR”的那個圖標即快速進入聯(lián)機狀態(tài);
提交
查看更多評論
其他資訊
超越傳統(tǒng)直覺,MATLAB/Simulink助力重型機械的智能化轉(zhuǎn)型
新大陸自動識別精彩亮相2024華南國際工業(yè)博覽會
派拓網(wǎng)絡被Forrester評為XDR領域領導者
智能工控,存儲強基 | ??低晭砭手黝}演講
展會|Lubeworks路博流體供料系統(tǒng)精彩亮相AMTS展會